﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ServiceModel;
using System.Runtime.Serialization;
namespace Skynet.ServiceContracts
{
    [ServiceContract(
        Namespace="http://skydotnet.codeplex.com",
        SessionMode= SessionMode.Allowed)]  
    public interface ISkynetLibraryService
    {   

        [OperationContract]
        [FaultContract(typeof(FaultContracts.SkynetServiceFault))]
        MessageContracts.FindCategoryResponse FindExamCategories( MessageContracts.FindCategoryRequest request);


        [OperationContract]
        [FaultContract(typeof(FaultContracts.SkynetServiceFault))]
        MessageContracts.UpdateExamCategoryResponse UpdateExamCategory(MessageContracts.UpdateExamCategoryRequest request);


        [OperationContract]
        [FaultContract(typeof(FaultContracts.SkynetServiceFault))]
        string GetStatus();

        [OperationContract(IsOneWay=true)]
        void LogService(string Message);

        
        [OperationContract ]
        MessageContracts.MaintenanceExamCategoryResponse MaintenanceExamCategory(MessageContracts.MaintenanceExamCategoryRequest request);


        [OperationContract]
        MessageContracts.MaintenanceQuestionsResponse MaintenanceQuestion(MessageContracts.MaintenanceQuestionsRequest request);

        



    }
}
